//==============================================================================
// Copyright (c) 2010-2020 Advanced Micro Devices, Inc. All rights reserved.
/// \author AMD Developer Tools Team
/// \file
/// \brief  GL counter definitions for GFX103
//==============================================================================

#include "gpa_counter.h"
#include "gpa_hw_counter_gfx103.h"
#include "gpa_hw_exposed_counters_gfx103.h"
#include "gpa_hw_counter_gl_gfx103.h"

// This file is autogenerated by the ConvertHWEnums project

// clang-format off

namespace counter_gl_gfx103
{
    using namespace counter_gfx103;

    GPA_HardwareCounterDesc* gl_counter_group_array_gfx103[] = {
        cb0_counters_gfx103,
        cb1_counters_gfx103,
        cb2_counters_gfx103,
        cb3_counters_gfx103,
        cpf_counters_gfx103,
        db0_counters_gfx103,
        db1_counters_gfx103,
        db2_counters_gfx103,
        db3_counters_gfx103,
        grbm_counters_gfx103,
        grbmse0_counters_gfx103,
        pa_su0_counters_gfx103,
        pa_sc0_counters_gfx103,
        pa_sc1_counters_gfx103,
        spi0_counters_gfx103,
        sq0_counters_gfx103,
        sq_es0_counters_gfx103,
        sq_gs0_counters_gfx103,
        sq_vs0_counters_gfx103,
        sq_ps0_counters_gfx103,
        sq_ls0_counters_gfx103,
        sq_hs0_counters_gfx103,
        sq_cs0_counters_gfx103,
        sx0_counters_gfx103,
        ta0_counters_gfx103,
        ta1_counters_gfx103,
        ta2_counters_gfx103,
        ta3_counters_gfx103,
        ta4_counters_gfx103,
        ta5_counters_gfx103,
        ta6_counters_gfx103,
        ta7_counters_gfx103,
        ta8_counters_gfx103,
        ta9_counters_gfx103,
        ta10_counters_gfx103,
        ta11_counters_gfx103,
        ta12_counters_gfx103,
        ta13_counters_gfx103,
        ta14_counters_gfx103,
        ta15_counters_gfx103,
        td0_counters_gfx103,
        td1_counters_gfx103,
        td2_counters_gfx103,
        td3_counters_gfx103,
        td4_counters_gfx103,
        td5_counters_gfx103,
        td6_counters_gfx103,
        td7_counters_gfx103,
        td8_counters_gfx103,
        td9_counters_gfx103,
        td10_counters_gfx103,
        td11_counters_gfx103,
        td12_counters_gfx103,
        td13_counters_gfx103,
        td14_counters_gfx103,
        td15_counters_gfx103,
        tcp0_counters_gfx103,
        tcp1_counters_gfx103,
        tcp2_counters_gfx103,
        tcp3_counters_gfx103,
        tcp4_counters_gfx103,
        tcp5_counters_gfx103,
        tcp6_counters_gfx103,
        tcp7_counters_gfx103,
        tcp8_counters_gfx103,
        tcp9_counters_gfx103,
        tcp10_counters_gfx103,
        tcp11_counters_gfx103,
        tcp12_counters_gfx103,
        tcp13_counters_gfx103,
        tcp14_counters_gfx103,
        tcp15_counters_gfx103,
        gds_counters_gfx103,
        cpg_counters_gfx103,
        cpc_counters_gfx103,
        ge_counters_gfx103,
        gl1a0_counters_gfx103,
        gl1c0_counters_gfx103,
        gl2a0_counters_gfx103,
        gl2a1_counters_gfx103,
        gl2a2_counters_gfx103,
        gl2a3_counters_gfx103,
        gl2c0_counters_gfx103,
        gl2c1_counters_gfx103,
        gl2c2_counters_gfx103,
        gl2c3_counters_gfx103,
        gl2c4_counters_gfx103,
        gl2c5_counters_gfx103,
        gl2c6_counters_gfx103,
        gl2c7_counters_gfx103,
        gl2c8_counters_gfx103,
        gl2c9_counters_gfx103,
        gl2c10_counters_gfx103,
        gl2c11_counters_gfx103,
        gl2c12_counters_gfx103,
        gl2c13_counters_gfx103,
        gl2c14_counters_gfx103,
        gl2c15_counters_gfx103,
        pa_ph_counters_gfx103,
        utcl10_counters_gfx103,
        chc0_counters_gfx103,
        cha_counters_gfx103,
        chcg_counters_gfx103,
        rmi0_counters_gfx103,
        rmi1_counters_gfx103,
        rmi2_counters_gfx103,
        rmi3_counters_gfx103,
        rmi4_counters_gfx103,
        rmi5_counters_gfx103,
        rmi6_counters_gfx103,
        rmi7_counters_gfx103,
        ge2_dist_counters_gfx103,
        ge_se0_counters_gfx103,
        gpin_counters_gfx103,
        gputime_counters_gfx103,
    };

    GPA_HardwareCounterDesc* gl_exposed_counters_group_array_gfx103[] = {
        cb0_exposed_counters_gfx103,
        cb1_exposed_counters_gfx103,
        cb2_exposed_counters_gfx103,
        cb3_exposed_counters_gfx103,
        cpf_exposed_counters_gfx103,
        db0_exposed_counters_gfx103,
        db1_exposed_counters_gfx103,
        db2_exposed_counters_gfx103,
        db3_exposed_counters_gfx103,
        grbm_exposed_counters_gfx103,
        pa_su0_exposed_counters_gfx103,
        pa_sc0_exposed_counters_gfx103,
        pa_sc1_exposed_counters_gfx103,
        spi0_exposed_counters_gfx103,
        sq0_exposed_counters_gfx103,
        sq_es0_exposed_counters_gfx103,
        sq_gs0_exposed_counters_gfx103,
        sq_vs0_exposed_counters_gfx103,
        sq_ps0_exposed_counters_gfx103,
        sq_ls0_exposed_counters_gfx103,
        sq_hs0_exposed_counters_gfx103,
        sq_cs0_exposed_counters_gfx103,
        sx0_exposed_counters_gfx103,
        ta0_exposed_counters_gfx103,
        ta1_exposed_counters_gfx103,
        ta2_exposed_counters_gfx103,
        ta3_exposed_counters_gfx103,
        ta4_exposed_counters_gfx103,
        ta5_exposed_counters_gfx103,
        ta6_exposed_counters_gfx103,
        ta7_exposed_counters_gfx103,
        ta8_exposed_counters_gfx103,
        ta9_exposed_counters_gfx103,
        ta10_exposed_counters_gfx103,
        ta11_exposed_counters_gfx103,
        ta12_exposed_counters_gfx103,
        ta13_exposed_counters_gfx103,
        ta14_exposed_counters_gfx103,
        ta15_exposed_counters_gfx103,
        td0_exposed_counters_gfx103,
        td1_exposed_counters_gfx103,
        td2_exposed_counters_gfx103,
        td3_exposed_counters_gfx103,
        td4_exposed_counters_gfx103,
        td5_exposed_counters_gfx103,
        td6_exposed_counters_gfx103,
        td7_exposed_counters_gfx103,
        td8_exposed_counters_gfx103,
        td9_exposed_counters_gfx103,
        td10_exposed_counters_gfx103,
        td11_exposed_counters_gfx103,
        td12_exposed_counters_gfx103,
        td13_exposed_counters_gfx103,
        td14_exposed_counters_gfx103,
        td15_exposed_counters_gfx103,
        tcp0_exposed_counters_gfx103,
        tcp1_exposed_counters_gfx103,
        tcp2_exposed_counters_gfx103,
        tcp3_exposed_counters_gfx103,
        tcp4_exposed_counters_gfx103,
        tcp5_exposed_counters_gfx103,
        tcp6_exposed_counters_gfx103,
        tcp7_exposed_counters_gfx103,
        tcp8_exposed_counters_gfx103,
        tcp9_exposed_counters_gfx103,
        tcp10_exposed_counters_gfx103,
        tcp11_exposed_counters_gfx103,
        tcp12_exposed_counters_gfx103,
        tcp13_exposed_counters_gfx103,
        tcp14_exposed_counters_gfx103,
        tcp15_exposed_counters_gfx103,
        gl1c0_exposed_counters_gfx103,
        gl2c0_exposed_counters_gfx103,
        gl2c1_exposed_counters_gfx103,
        gl2c2_exposed_counters_gfx103,
        gl2c3_exposed_counters_gfx103,
        gl2c4_exposed_counters_gfx103,
        gl2c5_exposed_counters_gfx103,
        gl2c6_exposed_counters_gfx103,
        gl2c7_exposed_counters_gfx103,
        gl2c8_exposed_counters_gfx103,
        gl2c9_exposed_counters_gfx103,
        gl2c10_exposed_counters_gfx103,
        gl2c11_exposed_counters_gfx103,
        gl2c12_exposed_counters_gfx103,
        gl2c13_exposed_counters_gfx103,
        gl2c14_exposed_counters_gfx103,
        gl2c15_exposed_counters_gfx103,
        ge_se0_exposed_counters_gfx103,
        gputime_exposed_counters_gfx103,
    };

    GPA_CounterGroupDesc hw_gl_groups_gfx103[] = {
        {0, "CB0", 0, 461, 4, 0},
        {1, "CB1", 1, 461, 4, 0},
        {2, "CB2", 2, 461, 4, 0},
        {3, "CB3", 3, 461, 4, 0},
        {4, "CPF", 0, 40, 2, 0},
        {5, "DB0", 0, 391, 4, 0},
        {6, "DB1", 1, 391, 4, 0},
        {7, "DB2", 2, 391, 4, 0},
        {8, "DB3", 3, 391, 4, 0},
        {9, "GRBM", 0, 47, 2, 0},
        {10, "GRBMSE", 0, 19, 4, 0},
        {11, "PA_SU", 0, 276, 4, 0},
        {12, "PA_SC0", 0, 578, 8, 0},
        {13, "PA_SC1", 1, 578, 8, 0},
        {14, "SPI", 0, 332, 6, 0},
        {15, "SQ", 0, 512, 16, 0},
        {16, "SQ_ES", 0, 512, 16, 0},
        {17, "SQ_GS", 0, 512, 16, 0},
        {18, "SQ_VS", 0, 512, 16, 0},
        {19, "SQ_PS", 0, 512, 16, 0},
        {20, "SQ_LS", 0, 512, 16, 0},
        {21, "SQ_HS", 0, 512, 16, 0},
        {22, "SQ_CS", 0, 512, 16, 0},
        {23, "SX", 0, 225, 4, 0},
        {24, "TA0", 0, 236, 2, 0},
        {25, "TA1", 1, 236, 2, 0},
        {26, "TA2", 2, 236, 2, 0},
        {27, "TA3", 3, 236, 2, 0},
        {28, "TA4", 4, 236, 2, 0},
        {29, "TA5", 5, 236, 2, 0},
        {30, "TA6", 6, 236, 2, 0},
        {31, "TA7", 7, 236, 2, 0},
        {32, "TA8", 8, 236, 2, 0},
        {33, "TA9", 9, 236, 2, 0},
        {34, "TA10", 10, 236, 2, 0},
        {35, "TA11", 11, 236, 2, 0},
        {36, "TA12", 12, 236, 2, 0},
        {37, "TA13", 13, 236, 2, 0},
        {38, "TA14", 14, 236, 2, 0},
        {39, "TA15", 15, 236, 2, 0},
        {40, "TD0", 0, 192, 2, 0},
        {41, "TD1", 1, 192, 2, 0},
        {42, "TD2", 2, 192, 2, 0},
        {43, "TD3", 3, 192, 2, 0},
        {44, "TD4", 4, 192, 2, 0},
        {45, "TD5", 5, 192, 2, 0},
        {46, "TD6", 6, 192, 2, 0},
        {47, "TD7", 7, 192, 2, 0},
        {48, "TD8", 8, 192, 2, 0},
        {49, "TD9", 9, 192, 2, 0},
        {50, "TD10", 10, 192, 2, 0},
        {51, "TD11", 11, 192, 2, 0},
        {52, "TD12", 12, 192, 2, 0},
        {53, "TD13", 13, 192, 2, 0},
        {54, "TD14", 14, 192, 2, 0},
        {55, "TD15", 15, 192, 2, 0},
        {56, "TCP0", 0, 77, 4, 0},
        {57, "TCP1", 1, 77, 4, 0},
        {58, "TCP2", 2, 77, 4, 0},
        {59, "TCP3", 3, 77, 4, 0},
        {60, "TCP4", 4, 77, 4, 0},
        {61, "TCP5", 5, 77, 4, 0},
        {62, "TCP6", 6, 77, 4, 0},
        {63, "TCP7", 7, 77, 4, 0},
        {64, "TCP8", 8, 77, 4, 0},
        {65, "TCP9", 9, 77, 4, 0},
        {66, "TCP10", 10, 77, 4, 0},
        {67, "TCP11", 11, 77, 4, 0},
        {68, "TCP12", 12, 77, 4, 0},
        {69, "TCP13", 13, 77, 4, 0},
        {70, "TCP14", 14, 77, 4, 0},
        {71, "TCP15", 15, 77, 4, 0},
        {72, "GDS", 0, 123, 4, 0},
        {73, "CPG", 0, 82, 2, 0},
        {74, "CPC", 0, 47, 2, 0},
        {75, "GE", 0, 40, 4, 0},
        {76, "GL1A", 0, 36, 4, 0},
        {77, "GL1C", 0, 83, 4, 0},
        {78, "GL2A0", 0, 91, 4, 0},
        {79, "GL2A1", 1, 91, 4, 0},
        {80, "GL2A2", 2, 91, 4, 0},
        {81, "GL2A3", 3, 91, 4, 0},
        {82, "GL2C0", 0, 254, 4, 0},
        {83, "GL2C1", 1, 254, 4, 0},
        {84, "GL2C2", 2, 254, 4, 0},
        {85, "GL2C3", 3, 254, 4, 0},
        {86, "GL2C4", 4, 254, 4, 0},
        {87, "GL2C5", 5, 254, 4, 0},
        {88, "GL2C6", 6, 254, 4, 0},
        {89, "GL2C7", 7, 254, 4, 0},
        {90, "GL2C8", 8, 254, 4, 0},
        {91, "GL2C9", 9, 254, 4, 0},
        {92, "GL2C10", 10, 254, 4, 0},
        {93, "GL2C11", 11, 254, 4, 0},
        {94, "GL2C12", 12, 254, 4, 0},
        {95, "GL2C13", 13, 254, 4, 0},
        {96, "GL2C14", 14, 254, 4, 0},
        {97, "GL2C15", 15, 254, 4, 0},
        {98, "PA_PH", 0, 992, 8, 0},
        {99, "UTCL1", 0, 21, 2, 0},
        {100, "CHC", 0, 40, 4, 0},
        {101, "CHA", 0, 45, 4, 0},
        {102, "CHCG", 0, 40, 4, 0},
        {103, "RMI0", 0, 258, 4, 0},
        {104, "RMI1", 1, 258, 4, 0},
        {105, "RMI2", 2, 258, 4, 0},
        {106, "RMI3", 3, 258, 4, 0},
        {107, "RMI4", 4, 258, 4, 0},
        {108, "RMI5", 5, 258, 4, 0},
        {109, "RMI6", 6, 258, 4, 0},
        {110, "RMI7", 7, 258, 4, 0},
        {111, "GE2_DIST", 0, 63, 4, 0},
        {112, "GE_SE", 0, 139, 4, 0},
        {113, "GPIN", 0, 5, 5, 0},
        {114, "GPUTime", 0, 6, 2, 0},
    };

    GPA_CounterGroupExposedCounterDesc hw_gl_exposed_counters_by_group_gfx103[] = {
        {0, 0, {7, 116, 117, 118, 126, 127, 128, 162, 257, 259}},
        {1, 461, {7, 116, 117, 118, 126, 127, 128, 162, 257, 259}},
        {2, 922, {7, 116, 117, 118, 126, 127, 128, 162, 257, 259}},
        {3, 1383, {7, 116, 117, 118, 126, 127, 128, 162, 257, 259}},
        {4, 1844, {0, 24}},
        {5, 1884, {4, 15, 28, 46, 48, 55, 60, 63, 144, 174, 175, 176, 177, 178, 179}},
        {6, 2275, {4, 15, 28, 46, 48, 55, 60, 63, 144, 174, 175, 176, 177, 178, 179}},
        {7, 2666, {4, 15, 28, 46, 48, 55, 60, 63, 144, 174, 175, 176, 177, 178, 179}},
        {8, 3057, {4, 15, 28, 46, 48, 55, 60, 63, 144, 174, 175, 176, 177, 178, 179}},
        {9, 3448, {0, 2}},
        {11, 3514, {8, 14, 21, 54, 55, 56, 57, 61, 62, 73, 74, 105, 109}},
        {12, 3790, {159, 160, 161, 162, 235, 236, 237, 238, 259}},
        {13, 4368, {159, 160, 161, 162, 235, 236, 237, 238, 259}},
        {14, 4946, {1, 9, 18, 21, 34, 41, 45, 46, 49, 51, 52, 55, 60, 61, 62, 63, 80, 81, 82, 83, 308, 314, 320, 326}},
        {15, 5278, {4, 5, 8, 31, 55, 57, 59, 60, 61, 64, 69, 70, 82, 117, 285, 299, 301, 334, 336}},
        {16, 5790, {4, 5, 8, 31, 55, 57, 59, 60, 61, 64, 69, 70, 82, 117, 285, 299, 301, 334, 336}},
        {17, 6302, {4, 5, 8, 31, 55, 57, 59, 60, 61, 64, 69, 70, 82, 117, 285, 299, 301, 334, 336}},
        {18, 6814, {4, 5, 8, 31, 55, 57, 59, 60, 61, 64, 69, 70, 82, 117, 285, 299, 301, 334, 336}},
        {19, 7326, {4, 5, 8, 31, 55, 57, 59, 60, 61, 64, 69, 70, 82, 117, 285, 299, 301, 334, 336}},
        {20, 7838, {4, 5, 8, 31, 55, 57, 59, 60, 61, 64, 69, 70, 82, 117, 285, 299, 301, 334, 336}},
        {21, 8350, {4, 5, 8, 31, 55, 57, 59, 60, 61, 64, 69, 70, 82, 117, 285, 299, 301, 334, 336}},
        {22, 8862, {4, 5, 8, 31, 55, 57, 59, 60, 61, 64, 69, 70, 82, 117, 285, 299, 301, 334, 336}},
        {23, 9374, {12, 14, 17, 19, 22, 24, 27, 29}},
        {24, 9599, {15, 89, 90, 91, 92, 93, 94, 95, 96, 97}},
        {25, 9835, {15, 89, 90, 91, 92, 93, 94, 95, 96, 97}},
        {26, 10071, {15, 89, 90, 91, 92, 93, 94, 95, 96, 97}},
        {27, 10307, {15, 89, 90, 91, 92, 93, 94, 95, 96, 97}},
        {28, 10543, {15, 89, 90, 91, 92, 93, 94, 95, 96, 97}},
        {29, 10779, {15, 89, 90, 91, 92, 93, 94, 95, 96, 97}},
        {30, 11015, {15, 89, 90, 91, 92, 93, 94, 95, 96, 97}},
        {31, 11251, {15, 89, 90, 91, 92, 93, 94, 95, 96, 97}},
        {32, 11487, {15, 89, 90, 91, 92, 93, 94, 95, 96, 97}},
        {33, 11723, {15, 89, 90, 91, 92, 93, 94, 95, 96, 97}},
        {34, 11959, {15, 89, 90, 91, 92, 93, 94, 95, 96, 97}},
        {35, 12195, {15, 89, 90, 91, 92, 93, 94, 95, 96, 97}},
        {36, 12431, {15, 89, 90, 91, 92, 93, 94, 95, 96, 97}},
        {37, 12667, {15, 89, 90, 91, 92, 93, 94, 95, 96, 97}},
        {38, 12903, {15, 89, 90, 91, 92, 93, 94, 95, 96, 97}},
        {39, 13139, {15, 89, 90, 91, 92, 93, 94, 95, 96, 97}},
        {40, 13375, {82, 116, 117, 118}},
        {41, 13567, {82, 116, 117, 118}},
        {42, 13759, {82, 116, 117, 118}},
        {43, 13951, {82, 116, 117, 118}},
        {44, 14143, {82, 116, 117, 118}},
        {45, 14335, {82, 116, 117, 118}},
        {46, 14527, {82, 116, 117, 118}},
        {47, 14719, {82, 116, 117, 118}},
        {48, 14911, {82, 116, 117, 118}},
        {49, 15103, {82, 116, 117, 118}},
        {50, 15295, {82, 116, 117, 118}},
        {51, 15487, {82, 116, 117, 118}},
        {52, 15679, {82, 116, 117, 118}},
        {53, 15871, {82, 116, 117, 118}},
        {54, 16063, {82, 116, 117, 118}},
        {55, 16255, {82, 116, 117, 118}},
        {56, 16447, {9, 18, 36}},
        {57, 16524, {9, 18, 36}},
        {58, 16601, {9, 18, 36}},
        {59, 16678, {9, 18, 36}},
        {60, 16755, {9, 18, 36}},
        {61, 16832, {9, 18, 36}},
        {62, 16909, {9, 18, 36}},
        {63, 16986, {9, 18, 36}},
        {64, 17063, {9, 18, 36}},
        {65, 17140, {9, 18, 36}},
        {66, 17217, {9, 18, 36}},
        {67, 17294, {9, 18, 36}},
        {68, 17371, {9, 18, 36}},
        {69, 17448, {9, 18, 36}},
        {70, 17525, {9, 18, 36}},
        {71, 17602, {9, 18, 36}},
        {77, 18007, {14, 18}},
        {82, 18454, {3, 43, 83, 85, 88, 99, 100, 101, 102}},
        {83, 18708, {3, 43, 83, 85, 88, 99, 100, 101, 102}},
        {84, 18962, {3, 43, 83, 85, 88, 99, 100, 101, 102}},
        {85, 19216, {3, 43, 83, 85, 88, 99, 100, 101, 102}},
        {86, 19470, {3, 43, 83, 85, 88, 99, 100, 101, 102}},
        {87, 19724, {3, 43, 83, 85, 88, 99, 100, 101, 102}},
        {88, 19978, {3, 43, 83, 85, 88, 99, 100, 101, 102}},
        {89, 20232, {3, 43, 83, 85, 88, 99, 100, 101, 102}},
        {90, 20486, {3, 43, 83, 85, 88, 99, 100, 101, 102}},
        {91, 20740, {3, 43, 83, 85, 88, 99, 100, 101, 102}},
        {92, 20994, {3, 43, 83, 85, 88, 99, 100, 101, 102}},
        {93, 21248, {3, 43, 83, 85, 88, 99, 100, 101, 102}},
        {94, 21502, {3, 43, 83, 85, 88, 99, 100, 101, 102}},
        {95, 21756, {3, 43, 83, 85, 88, 99, 100, 101, 102}},
        {96, 22010, {3, 43, 83, 85, 88, 99, 100, 101, 102}},
        {97, 22264, {3, 43, 83, 85, 88, 99, 100, 101, 102}},
        {112, 25783, {73, 80, 86, 92, 111}},
        {114, 25927, {0, 1, 2, 3, 4, 5}},
    };

    GPA_PaddedCounterDesc gl_padded_counter_by_group_gfx103[] = {
    {}
    };

    GPA_SQCounterGroupDesc hw_gl_sq_groups_gfx103[] = {
        {15, 0, SQ_ALL},
        {16, 0, SQ_ES},
        {17, 0, SQ_GS},
        {18, 0, SQ_VS},
        {19, 0, SQ_PS},
        {20, 0, SQ_LS},
        {21, 0, SQ_HS},
        {22, 0, SQ_CS},
    };


    unsigned int hw_gl_sq_isolated_groups_gfx103[] = {
        24, // Ta
        25, // Ta
        26, // Ta
        27, // Ta
        28, // Ta
        29, // Ta
        30, // Ta
        31, // Ta
        32, // Ta
        33, // Ta
        34, // Ta
        35, // Ta
        36, // Ta
        37, // Ta
        38, // Ta
        39, // Ta
        40, // Td
        41, // Td
        42, // Td
        43, // Td
        44, // Td
        45, // Td
        46, // Td
        47, // Td
        48, // Td
        49, // Td
        50, // Td
        51, // Td
        52, // Td
        53, // Td
        54, // Td
        55, // Td
        56, // Tcp
        57, // Tcp
        58, // Tcp
        59, // Tcp
        60, // Tcp
        61, // Tcp
        62, // Tcp
        63, // Tcp
        64, // Tcp
        65, // Tcp
        66, // Tcp
        67, // Tcp
        68, // Tcp
        69, // Tcp
        70, // Tcp
        71, // Tcp
    };

    const unsigned int hw_gl_gputimebottomtobottomduration_index_gfx103 = 25927; ///< Index of delta between the previous command reaching bottom of pipe and the current command reaching bottom of pipe, will not include latency of first data to travel through pipeline, best for large data sets. for gl for gfx103 family
    const unsigned int hw_gl_gputimebottomtobottomstart_index_gfx103 = static_cast<unsigned int>(-1); ///< Index of time of the previous command reaching bottom of pipe for gl for gfx103 family
    const unsigned int hw_gl_gputimebottomtobottomend_index_gfx103 = static_cast<unsigned int>(-1); ///< Index of time of the current command reaching bottom of pipe for gl for gfx103 family
    const unsigned int hw_gl_gputimetoptobottomduration_index_gfx103 = 25930; ///< Index of execution duration of the current command from top of pipe to bottom of pipe, may include overhead of time in queue for gl for gfx103 family
    const unsigned int hw_gl_gputimetoptobottomstart_index_gfx103 = static_cast<unsigned int>(-1); ///< Index of time that the current command reaches the top of pipe for gl for gfx103 family
    const unsigned int hw_gl_gputimetoptobottomend_index_gfx103 = static_cast<unsigned int>(-1); ///< Index of time that the current command reaches the bottom of pipe for gl for gfx103 family
    const std::set<unsigned int> hw_gl_timestamp_block_ids_gfx103 =       {114}; ///< Timestamp block id's for GL for gfx103 family
    const std::set<unsigned int> hw_gl_time_counter_indices_gfx103 =      {25927, 25928, 25929, 25930, 25931, 25932}; ///< Timestamp counter indices for GL for gfx103 family
    const unsigned int           hw_gl_group_count_gfx103                = sizeof(hw_gl_groups_gfx103) / sizeof(GPA_CounterGroupDesc);
    const unsigned int           hw_gl_exposed_counters_group_count_gfx103 = 90;
    const unsigned int           gl_padded_counter_group_count_gfx103 = 0;
    const unsigned int           hw_gl_sq_group_count_gfx103              = sizeof(hw_gl_sq_groups_gfx103) / sizeof(GPA_SQCounterGroupDesc);
    const unsigned int           hw_gl_sq_isolated_group_count_gfx103      = sizeof(hw_gl_sq_isolated_groups_gfx103) / sizeof(unsigned int);
} //  namespace counter_gl_gfx103

// clang-format on
